package proto

const (
	TEST             = -1
	HEART            = 0
	OFFLINE          = 1
	ROOMCONFIG       = 2
	ROOMJOIN         = 3
	ROOMEXIT         = 4
	ROOMINFO         = 5
	PLAYERINFO       = 6
	BETINFO          = 7
	BET              = 8
	SETTLE           = 9
	AREACHANGE       = 10
	WINBROADCAST     = 11
	PrizePoolInfo    = 12
	PrizeSettle      = 13
	BarrageSend      = 14
	BarrageBroadcast = 15
)

type RoomConfigInfoRes struct {
	Id               int64  `json:"id"`
	RoomLevel        int    `json:"roomLevel"`
	Chips            string `json:"chips"`
	EnterCoin        int64  `json:"enterCoin"`
	PumpWaterPercent int64  `json:"pumpWaterPercent"`
	LevelConfig      string `json:"levelConfig"`
}

type RoomInfoRes struct {
	Periods         int64  `json:"periods"`
	RoomLevel       int    `json:"roomLevel"`
	AreaInfos       []int  `json:"areaInfos"`
	LastKillerAreas []int  `json:"lastKillerAreas"`
	Status          int    `json:"status"`
	Countdown       int    `json:"countdown"`
	Chips           string `json:"chips"`
	StartCount      int64  `json:"startCount"`
	TotalCount      int64  `json:"totalCount"`
	CurrentCount    int64  `json:"currentCount"`
	BarrageState    int    `json:"barrageState"`
}

type PlayerInfoRes struct {
	Id               int64  `json:"id"`
	NickName         string `json:"nickName"`
	Avatar           int64  `json:"avatar"`
	UserCode         string `json:"userCode"`
	Coins            int64  `json:"coins"`
	Level            int64  `json:"level"`
	Status           int    `json:"status"`
	IsSelf           bool   `json:"isSelf"`
	LastBetTimeStamp int64  `json:"lastBetTimeStamp"`
	IsGaming         bool   `json:"isGaming"`
}

type BetInfoRes struct {
	RoomId      int64  `json:"roomId"`
	RoomLevel   int    `json:"roomLevel"`
	RoomPeriods int64  `json:"roomPeriods"`
	RoomArea    int    `json:"roomArea"`
	PlayerId    int64  `json:"playerId"`
	NickName    string `json:"nickName"`
	BetCoins    int64  `json:"betCoins"`
}

type SettleInfoRes struct {
	SettleTime      int64    `json:"settleTime"`
	RoomId          int64    `json:"roomId"`
	Periods         int64    `json:"periods"`
	RoomLevel       int      `json:"roomLevel"`
	RoomArea        int      `json:"roomArea"`
	KillerAreas     string   `json:"killerAreas"`
	KillerWays      []string `json:"killerWays"`
	PlayerId        int64    `json:"playerId"`
	BetCoins        int64    `json:"betCoins"`
	ProfitLossCoins int64    `json:"profitLossCoins"`
	GameResult      int      `json:"gameResult"`
}

type WinBroadcastRes struct {
	NickName  string `json:"nickName"`
	WinCoins  int64  `json:"winCoins"`
	RoomLevel int    `json:"roomLevel"`
}

type PrizePoolRes struct {
	PrizeCoins int64 `json:"prizeCoins"`
	MostOpen   bool  `json:"mostOpen"`
}

type PrizeSettleRes struct {
	PrizeCoins int64 `json:"prizeCoins"`
}
